package cn.com.shopec.erp.product.service;

import java.util.List;

import cn.com.shopec.erp.common.page.PageFinder;
import cn.com.shopec.erp.common.page.PageQuery;
import cn.com.shopec.erp.product.entity.Brand;
import cn.com.shopec.erp.product.vo.BrandVo;

/**
 * 
 * @ClassName: IBrandService
 * @Description: 品牌业务service接口
 * @author: duhui
 * @date 2013-5-26 下午04:14:27
 * 
 */
public interface IBrandService {

    /**
     * 
     * @Title: addBrand
     * @Description: 添加品牌信息
     * @param brandVo
     * @throws
     * @author: duhui
     * @date: 2013-5-26下午04:15:58
     */
    public void addBrand(BrandVo brandVo) throws Exception;

    /**
     * 
     * @Title: updateBrand
     * @Description: 修改品牌信息
     * @param brandVo
     * @return
     * @throws
     * @author: duhui
     * @date: 2013-5-26下午04:17:40
     */
    public void updateBrand(BrandVo brandVo) throws Exception;

    /**
     * 
     * @Title: delBrand
     * @Description: 删除品牌信息
     * @param brandVo
     * @return
     * @throws
     * @author: duhui
     * @date: 2013-5-26下午04:25:58
     */
    public void delBrand(String brandNo) throws Exception;

    /**
     * 
     * @Title: getBrand
     * @Description: 根据编号查询品牌信息
     * @param brandNo
     * @throws Exception
     * @throws
     * @author: duhui
     * @date: 2013-5-26下午05:02:06
     */
    public BrandVo getBrand(String brandNo);
    
    /**
     * 
     * @Title: getBrand
     * @Description: 根据品牌名称查编号
     * @param brandNo
     * @throws Exception
     * @throws
     * @author: duhui
     * @date: 2013-5-26下午05:02:06
     */
    public BrandVo getBrandName(String brandName);

    /**
     * 
     * @Title: getPagedBrandList
     * @Description: 分页查询品牌信息
     * @param brandVo
     * @param pageQuery
     * @return
     * @throws
     * @author: duhui
     * @date: 2013-5-26下午04:27:05
     */
    public PageFinder<BrandVo> getPagedBrandList(BrandVo brandVo, PageQuery pageQuery) throws Exception;

    /**
     * 
     * @Title: getBrandList
     * @Description: 查询所有的品牌
     * @return
     * @throws
     * @author: duhui
     * @date: 2013-5-30下午04:20:41
     */
    public List<BrandVo> getBrandList() throws Exception;

    /**
     * 
     * @Title: getBrandListByNo
     * @Description: 根据编号查询品牌
     * @return
     * @throws
     * @author: gaoyaxiong
     * @date: 2013-5-30下午04:20:41
     */
    public List<BrandVo> getBrandListByNo(String[] brandNo);

    /**
     * 
     * @Title: validationRepeatNo
     * @Description: 验证输入的编号是否重复
     * @param no
     * @return
     * @throws
     * @author: duhui
     * @date: 2013-6-7下午05:33:24
     */
    public String validationRepeatNo(BrandVo brandVo);
    
    
    /**
     * 根据uuid编码取对象信息
     * @param brandCode
     * @return
     */
    public Brand getBrandByBrandCode(String brandNo);

	public Brand getBrandByNo(String brandNo);
    
}
